/* this module defines functions to print on and read from the tty0 device. It also includes some functions to print on the LCD. */

#ifndef DISPLAY_H
#define DISPLAY_H

#include "malta_lcd.h"
#include "uart.h"
#include "types.h"
#include "process_management.h"

/* prints the string data on the tty0 console. Returns 1 if the operation is sucessful, 0 otherwise. data must be a null-terminated string. */
int32_t print_string(const char* data);

/* reads a string from the user using the tty0 device. It reads until the user presses enter or up to length-1 characters. The characters read are put in data and the null character is appended at the end. It returns 1 if the operation is successful, 0 otherwise. */
int32_t read_string(char* data, int32_t length);

/* prints a string on the LCD display.Returns 1 in the successful case, 0 otherwise. Data must be a null-terminated string.*/
int32_t print_lcd(const char* data);

#endif


